/**
 * 静态初始化
 * 构造方法用于对象的普遍性初始化
 * 静态初始化块，用于类的初始化操作，初始化静态属性
 * 在静态初始块中不能直接访问非static成员
 */
/*静态初始化执行顺序：上溯到Object类，先执行Object的静态初始化块，再向下
 执行子类的静态初始化块
 构造方法执行顺序和上面一样*/
public class TestStatic2 {
    static String company;//公司名称
    //初始化static,类( class TestStatic2)被加载时执行printCompany();
    static {
        System.out.println("执行类的初始化工作");
        company = "百战程序员";
        printCompany();
    }
    public static void printCompany(){
        //调用static
        System.out.println(company);
    }

    public static void main(String[] args) {
        //main方法什么也没有做，也可以执行，因为类被加载时就执行
    }
}
